﻿/* *****************************************************************************
 * @ Encoding: UTF-8
 * @ File Name: naughty_differential_node_div.hpp
 * @ Author: carl
 * @ Email: naughtygeng@qq.com
 * @ Created Time: 2022-7月-12(星期二) 20:16:50
 * @ All Rights Reserved
 * *****************************************************************************/

#ifndef NAUGHTY_DIFFERENTIAL_NODE_DIV_HPP
#define NAUGHTY_DIFFERENTIAL_NODE_DIV_HPP

#include "naughty_differential_node_base.hpp"

namespace naughty_differential
{

class node_div : public node_base
{

private:



public:

    node_div(std::shared_ptr<node_base> param01, std::shared_ptr<node_base> param02);

    node_div(std::vector<std::shared_ptr<node_base>> params);

	std::shared_ptr<node_base> differential(std::string variable /* = 'x' */ ) override;

	enum node_type get_node_type() override;

	std::string serialize() override;

    std::string to_string() const override;

	std::shared_ptr<node_base> clone() override;

	double get_value(std::map<std::string, double> val_value_map) override;

	std::string identity_string() const override;
};

}

#endif
